Trellis state based stopping criterion for turbo-decoding

ABSTRACT

A stopping criterion for a turbo-coding method. The criterion is based on states of a trellis determined by forward-backward recursion. If, for at least one elementary decoding stage, a transition ending state of a previous symbol is found identical to a transition starting state of a current symbol, for every symbol of the block but a first one and a last one, the decoding path is considered as consistent, a hard decision on the extrinsic information is made, and the turbo-decoding stops.

TECHNICAL FIELD

The present application relates to the field of turbo codes and moreparticular to turbo-decoding.

PRIOR ART

The turbo-codes were introduced by C. Berrou et al. in the seminalarticle entitled “Near Shannon limit error-correcting coding anddecoding: Turbo Codes”, Proceedings of ICC '93 pp. 1064-1070, haveencountered since then widespread success. The remarkable performancesof the turbo-codes in terms of bit error rate or BER (Bit Error Rate),close to those of random coding, are explained by the presence of one ormore interleaver(s) between different elementary coders. They are usedas error correcting codes in many digital communication standards.

In its most common form, a turbo-encoder can be regarded as a parallelor a serial concatenation of systematic elementary encoders separated byinterleavers.

At the receiving side, turbo-decoding is achieved by an iterativeprocess involving as many elementary decoders as the turbo-encoder haselementary encoders, each iteration improving the reliability of thedecoded codeword.

FIG. 1 illustrates an example of the structure of a turbocodercomprising two parallel concatenated elementary recursive systematicconvolutional (RSC) encoders.

In this example, a block of information bits, I, are coded by twoelementary encoders of the systematic convolutional type, arranged inparallel. Each elementary encoder is constituted by a (shared)systematic path, leaving by definition the information bits unchanged,and by a convolutional encoder. The first convolutional encoder 110outputs parity bits P₁ as a function of the information bits I. Theblock of parity bits is hereafter referred to as the first redundancypart. Similarly, the second convolutional encoder 120 outputs secondparity bits P₂ as a function of the information bits I previouslyinterleaved by the interleaver 130. The block of parity bits P₂ isreferred to as the second redundancy part.

The multiplexer 150 multiplexes the information bits I (systematic part)with the parity bits P₁ (first redundancy part) and P₂ (secondredundancy part) before transmission over the communication channel 160.More specifically, the multiplexed bits are converted into M-ary symbols(where M is the cardinal of the modulation alphabet) prior to carriermodulation.

FIG. 2 illustrates an example of turbo-decoder for decoding a blockencoded by the turbo-encoder of FIG. 1.

The turbo-decoder comprises a first elementary decoder 210 correspondingto encoder 110, a second elementary decoder 220 corresponding to encoder120. The decoders are of the SISO type (Soft In Soft Out) and may carryout the MAP (Maximum A posteriori Probability) decoding algorithm or oneof its derivatives e.g. the Log-MAP or Max-Log-MAP decoding algorithm asknown in the art.

The turbo-decoder receives from the symbol demodulator a noisy versionof the information bits, the first parity bits and the second paritybits, respectively denoted Ĩ, {tilde over (P)}₁ and {tilde over (P)}₂.The systematic bits Ĩ and first parity bits {tilde over (P)}₁ aresupplied to the first elementary decoder 110. The first elementarydecoder also inputs a priori information (also called extrinsicinformation) from the second elementary decoder.

Similarly, the second elementary decoder 220 inputs the receivedinformation bits Ĩ, after having being interleaved in interleaver 230,along with the received parity bits {tilde over (P)}₂. The secondelementary decoder additionally inputs extrinsic information from thefirst elementary decoder after it has been interleaved in interleaver230′. The interleavers 230 and 230′ exhibit the same interleavingpattern Π as interleaver 130. The extrinsic information provided by thesecond decoder is de-interleaved in de-interleaver 240 before beingsupplied to the first elementary decoder. The de-interleaver has theinverse interleaving pattern Π⁻¹ of interleaver 130.

The encoded block is subjected to iterative decoding, each decodingiteration comprising a first half-iteration in decoder 210 and asubsequent second half-iteration in decoder 220. The update and exchangeof extrinsic information, i.e. of the extrinsic values relative to thedifferent information bits, between the first and second elementarydecoder, at each iteration, increases the reliability of the decodedblock. It should be noted that the extrinsic information of the firstdecoder is initialized at values indicative of a lack of prior knowledgeof bit reliability (0 if LLR values are used).

The extrinsic information is classically expressed in terms of softvalues, e.g. LLRs (Log Likelihood Ratios) indicating the reliability ofthe decoding of each binary symbol. After completion of a given numberof iterations or, more generally, when a predetermined stoppingcriterion is met, the decoding process is stopped and a hard decision istaken in 250 on the soft values to provide hard bit values. The harddecision is taken by performing a simple comparison with a giventhreshold (0 in case of LLR values).

The power consumption and the latency linearly depend upon the number ofiterations of the decoder. It is therefore important to design anefficient stopping criterion, which does not lead to unnecessaryiterations while simultaneously achieving a reasonable level ofreliability of the decoded values.

Several stopping criteria have been proposed in the literature, based onsoft and/or hard values.

US2007/0300139 discloses a stopping criterion based on the comparison ofthe LLR values output by an elementary decoder for two consecutiveiterations. The implementation of such a stopping criterion requireshowever large storage capacity since a soft value (e.g. coded with abyte) has to be stored for each binary symbol of the block.

EP-A-1455457 further proposes to compare the minimum absolute value ofthe LLR values of an block with a given threshold. Once this minimumabsolute value exceeds the threshold, the iterative decoding process isstopped. In other words, the decoding process stops when the reliabilitylevel of the less reliable bit is high enough.

In practice, this stopping criterion is quite sensitive to the thresholdvalue. A too high threshold may result in a frequent rejection ofcorrectly decoded blocks.

An alternative stopping criterion is based on the cross entropy of theLLR related to two consecutive iterations. This criterion is efficientbut requires extra computation and considerable memory capacity.

Further stopping criteria are based on monitoring the sign changes inthe extrinsic information related to two consecutive iterations. Indeedif a sign of a soft value oscillates from on iteration to the text, thisindicates that the corresponding bit is not yet reliable. This stoppingcriterion requires considerable memory capacity, as the signs of the LLRvalues for at least two blocks of extrinsic information need to bestored.

The aim of the present invention is therefore to propose a new stoppingcriterion for a turbodecoding process, which is robust without needingcomputational overhead or large memory capacity.

DISCLOSURE OF THE INVENTION

The present invention is defined in the appended independent claims.Various advantageous embodiments are given in the dependent claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be better understood from the description ofthe following embodiments, by way of illustration and in no waylimitative thereto:

FIG. 1 schematically illustrates an example of turbo-encoder known fromthe prior art;

FIG. 2 schematically illustrates an example of turbo-decoder known fromthe prior art;

FIG. 3 schematically represents a coding path in a trellis of anelementary encoder;

FIG. 4 schematically illustrates a trellis diagram used for in anelementary decoder of a turbo-decoder;

FIG. 5A represents a path in the trellis, going through transitionstarting states, for consecutive turbo-decoding iterations;

FIG. 5B represents a path in the trellis, going through transitionending states, for consecutive turbo-decoding iterations;

FIG. 6 schematically represents a flowchart of a turbo-decoding methodusing a stopping criterion according to an embodiment of the invention.

DETAILED DISCLOSURE OF PARTICULAR EMBODIMENTS

We will consider again in the following a turbo-decoder for decodingblocks of binary symbols which have been encoded by a turbo-encoder. Theterm block can be construed here as a frame or a codeword. The binarysymbols processed by the turbo-decoder are expressed in terms of softvalues (soft information), typically in terms of LLRs as known in theart.

The turbo-encoder may be constituted by a plurality P of parallel orserially concatenated elementary coders or a combination of such serialand parallel concatenated elementary coders (hybrid turbocoder). Withoutloss of generality we will assume that the elementary coders are RSC(Recursive Systematic Convolutional) encoders. It will nevertheless beunderstood by the man skilled in the art that other types of encoderscan be used while remaining in the scope of present invention.

The turbo-decoder is constituted by the same plurality P of elementarydecoders and performs an iterative decoding process as set out above. Itis recalled that each elementary decoder corresponds to an elementaryencoder of the turbo-encoder and processes the same kind of informationas the one output by the corresponding elementary encoder. Morespecifically, each elementary decoder inputs the systematic part of thereceived block (e.g. after propagation over the communication channel),possibly interleaved, and a redundancy part corresponding to the onegenerated by said elementary encoder. In addition, the elementarydecoder receives extrinsic information from at least another elementarydecoder. Each elementary decoder generates its own extrinsic informationfrom the input systematic part, redundancy part and extrinsicinformation. The extrinsic information thus generated is supplied inturn to at least another elementary decoder.

Before describing the operation of an elementary decoder, we firstconsider the corresponding elementary encoder in the turbo-encoder. Thiselementary encoder, as any convolutional encoder, can be regarded as afinite state machine, the transitions of which are determined by thegenerator polynomial. If the memory of the encoder is of size v (v shiftregister stages), the finite state machine may take 2^(v) states, eachstate being defined by the contents of the memory. It should be notedthat the various elementary encoders of the turbo-encoder may havedifferent memory sizes (i.e. shift registers having different lengths)and hence different numbers of states.

The coding operation may be regarded as a path in a trellis diagram asrepresented in FIG. 4.

Conventionally, the possible states of the encoder have been representedvertically by circles whereas the horizontal direction is the time axis.Each column of states corresponds to a clock cycle. At each input bit,on progresses rightwards in the trellis, and the encoder goes from astate a time k to a subsequent state at time k+1. The transition betweenthe state at time k and the state at time k+1 is therefore representedby an edge in the trellis (and by an arc in the state diagram). Thecoding of a block of bits results therefore in a path within thetrellis. At each time k, the encoder outputs a parity bit (in additionto the systematic bit) which depends upon the state of the encoder andthe input bit.

The corresponding elementary decoder implements a forward-backwardalgorithm as know in the art. By forward-backward algorithm we mean herethe MAP decoding algorithm or one of its derivatives such as the Log-MAPor the Max-Log-MAP algorithm. A description of the MAP algorithm can befound in the original paper of Bahl et al. entitled “Optimal decoding oflinear codes for minimizing symbol error rate” published in IEEE Trans.on Information Theory, pp. 284-287, March 1974. A description of theMax-Log-MAP algorithm can be found e.g. in the article of C. Hye-Mi etal. entitled “Low power hybrid turbo decoding based in reversecalculation, ISCAS 2006.

The forward-backward algorithm is based on the same trellis as thecoding trellis described above. More specifically, the forward-backwardalgorithm mainly comprises three steps: a forward recursion, a backwardrecursion and an extrinsic information (e.g. values) LLR calculation.

In the forward recursion, the algorithm recursively calculates theforward state probability of being in each state of the trellis at eachtime k given the knowledge of all the previous received symbols. Theforward state probability, also called forward state metrics, isrecursively obtained by:

$\begin{matrix}{{{\alpha_{k}(s)} = {{\sum\limits_{s^{\prime}}\;{{\alpha_{k - 1}\left( s^{\prime} \right)}{\gamma_{k}\left( {s^{\prime},s} \right)}\mspace{14mu} k}} = 1}},{{\ldots\mspace{14mu} N} - 1}} & (1)\end{matrix}$where s is the current state and s′ is the preceding state, α_(k-1)(s′)is the forward state probability of being at state s′ at time k−1, andγ_(k)(s′,s) is the branch probability of the transition between state s′and state s, given the received symbol, N is the size of the block. Thestate s′ at the beginning of the transition s′→s will be referred to asthe transition starting state whereas the state will be referred to asthe transition ending state. The branch probability is also called thebranch metrics.

The forward recursion is initialized by forcing the starting state tostate 0 and setting:α₀(0)=1 and α₀(s)=0 for s≠0  (2)

Similarly, in the backward recursion, the algorithm recursivelycalculates the backward state probability of being in each state of thetrellis at each time k given the knowledge of all the following symbols.The backward state probability, also called backward state metrics, isrecursively obtained by:

$\begin{matrix}{{{\beta_{k - 1}\left( s^{\prime} \right)} = {{\sum\limits_{s}\;{{\beta_{k}(s)}{\gamma_{k}\left( {s^{\prime},s} \right)}\mspace{14mu} k}} = N}},\ldots\mspace{14mu},2} & (3)\end{matrix}$

The backward recursion is initialized by forcing the ending state tostate 0 and setting:β_(N)(0)=1 and β_(N)(s)=0 for s≠0  (4)

The output LLR for each bit u_(k) at time k is given by:

$\begin{matrix}{{L\left( u_{k} \right)} = {{\ln\frac{P\left( {u_{k} = {{+ 1}❘y_{k}}} \right)}{P\left( {u_{k} = {{- 1}❘y_{k}}} \right)}} = {\ln\frac{\sum\limits_{\overset{({s^{\prime},s})}{u_{k} = {+ 1}}}\;{{\alpha_{k - 1}\left( s^{\prime} \right)}{\gamma_{k}\left( {s^{\prime},s} \right)}{\beta_{k}(s)}}}{\sum\limits_{\overset{({s^{\prime},s})}{u_{k} = {- 1}}}\;{{\alpha_{k - 1}\left( s^{\prime} \right)}{\gamma_{k}\left( {s^{\prime},s} \right)}{\beta_{k}(s)}}}}}} & (5)\end{matrix}$where y_(k) is the modulation symbol received on the communicationchannel at time k and where the bit values have been noted ±1. The uppersummation in (5) is carried out over all branches with input label +1and the lower summation is carried out over all branches with inputlabel −1.

For an AWGN (Additive White Gaussian Noise) channel, the branch metricsγ_(k)(s,s′) can be obtained as:

$\begin{matrix}{{\gamma_{k}\left( {s^{\prime},s} \right)} = {\exp\left( {- \frac{{{y_{k} - x_{k}}}^{2}}{2\sigma^{2}}} \right)}} & (6)\end{matrix}$where σ² is the noise variance and x_(k) is the expected symbol for thetransition s′ to s.

The expressions (1)-(6) refer to the MAP algorithm. They can besimplified by using logarithmic values (Log-MAP algorithm) and evenfurther simplified by retaining only the most significant values underthe summation signs (Max-Log-MAP algorithm). In the latter case,denoting {hacek over (ρ)} for ln ρ:

$\begin{matrix}{\mspace{79mu}{{{\overset{\Cup}{\alpha}}_{k}(s)} = {\max\limits_{s^{\prime}}\left\lbrack {{{\overset{\Cup}{\alpha}}_{k - 1}\left( s^{\prime} \right)} + {{\overset{\Cup}{\gamma}}_{k}\left( {s^{\prime},s} \right)}} \right\rbrack}}} & \left( 1^{\prime} \right) \\{\mspace{79mu}{{{\overset{\Cup}{\alpha}}_{0}(0)} = {{0\mspace{14mu}{and}\mspace{14mu}{{\overset{\Cup}{\alpha}}_{0}(s)}} = {{{- \infty}\mspace{14mu}{for}\mspace{14mu} s} \neq 0}}}} & \left( 2^{\prime} \right) \\{\mspace{79mu}{{{\overset{\Cup}{\beta}}_{k - 1}\left( s^{\prime} \right)} = {\max\limits_{s^{\prime}}\left\lbrack {{{\overset{\Cup}{\beta}}_{k}(s)} + {{\overset{\Cup}{\gamma}}_{k}\left( {s^{\prime},s} \right)}} \right\rbrack}}} & \left( 3^{\prime} \right) \\{\mspace{79mu}{{{\overset{\Cup}{\beta}}_{N}(0)} = {{0\mspace{14mu}{and}\mspace{14mu}{{\overset{\Cup}{\beta}}_{N}(s)}} = {{{- \infty}\mspace{14mu}{for}\mspace{14mu} s} \neq 0}}}} & \left( 4^{\prime} \right) \\{{L\left( u_{k} \right)} = {{\max\limits_{\overset{({s^{\prime},s})}{u_{k} = {+ 1}}}\;\left\lbrack {{{\overset{\Cup}{\alpha}}_{k - 1}\left( s^{\prime} \right)} + {{\overset{\Cup}{\gamma}}_{k}\left( {s^{\prime},s} \right)} + {{\overset{\Cup}{\beta}}_{k}(s)}} \right\rbrack} - {\max\limits_{\overset{({s^{\prime},s})}{u_{k} = {- 1}}}\;\left\lbrack {{{\overset{\Cup}{\alpha}}_{k - 1}\left( s^{\prime} \right)} + {{\overset{\Cup}{\gamma}}_{k}\left( {s^{\prime},s} \right)} + {{\overset{\Cup}{\beta}}_{k}(s)}} \right\rbrack}}} & \left( 5^{\prime} \right) \\{\mspace{79mu}{{{\overset{\Cup}{\gamma}}_{k}\left( {s^{\prime},s} \right)} = {{- {\frac{1}{2\sigma^{2}}\left\lbrack {{y_{k}}^{2} + {x_{k}}^{2}} \right\rbrack}} + {\frac{1}{\sigma^{2}}\left( {y_{k} \cdot x_{k}} \right)}}}} & \left( 6^{\prime} \right)\end{matrix}$

As the first term between brackets is common to all branch metrics, itcan be dropped for the purpose of calculating (1′), (3′) and (5′), inother words:

$\begin{matrix}{{{\overset{\Cup}{\gamma}}_{k}\left( {s^{\prime},s} \right)} = {\frac{1}{\sigma^{2}}\left( {y_{k},x_{k}} \right)}} & \left( 6^{''} \right)\end{matrix}$

In expressions (6) or (6″), the only changing parameter is x_(k). x_(k)is a P+1 dimension vector (assuming one parity bit per elementaryencoder), the elements of which are the systematic bit, denoted x_(k)^(s) and the parity bits denoted x_(k) ^(r) ^(p) , p=1, . . . , P. Thesoft value of the systematic bit in (6) or (6″) is replaced by:x _(k) ^(s) =y _(k) ^(s) +L _(e)(u _(k))  (7)where L_(e)(u_(k)) is the extrinsic information provided from anotherelementary decoder. Therefore, the γ_(k)(s′,s) values can be calculatedat each turbo-decoding iteration.

For the sake of simplification, we will now restrict the description tothe Max-Log-MAP algorithm. The forward metrics for time κ−1 and thebackward metrics for time κ can be calculated for each state:

$\begin{matrix}{{{\overset{\Cup}{\alpha}}_{\kappa - 1}(s)} = {\max\limits_{s^{\prime}}\left( {\sum\limits_{k = 0}^{\kappa - 1}\;{{\overset{\Cup}{\gamma}}_{k}\left( {s^{\prime},s} \right)}} \right)}} & (8) \\{{{\overset{\Cup}{\beta}}_{\kappa}(s)} = {\max\limits_{s^{\prime}}\left( {\sum\limits_{k = {\kappa + 1}}^{N}\;{{\overset{\Cup}{\gamma}}_{k}\left( {s^{\prime},s} \right)}} \right)}} & (9)\end{matrix}$

Referring to expression (5′), there is a single couple (s′,s) oftransition starting and ending states which maximizes {hacek over(α)}_(κ-1)(s′)+{hacek over (γ)}_(κ)(s′,s)+{hacek over(β)}_(κ)(s)|u_(κ)=1+. This couple of states is denoted (S′_(κ)⁺¹(i),S_(κ) ⁺¹(i)). It depends upon the values of {hacek over(γ)}_(k)(s′,s), k=0, . . . , N which in turn depends upon the iterationi of turbo-decoding as these values are function of extrinsicinformation.

Similarly, there is a single couple of states (s,s′) which maximizes{hacek over (α)}_(κ-1)(s′)+{hacek over (γ)}_(κ)(s′,s)+{hacek over(β)}_(κ)(s)|u_(κ)=−1 in expression (5′). This couple of states isdenoted (S′_(κ) ⁻¹(i),S_(κ) ⁻¹(i)) for the same reasons as those statedabove.

FIG. 5A illustrates a first path in the trellis, going throughtransition starting states S′_(κ) ⁺¹(i), κ=1, . . . , N−1, forconsecutive turbo-decoding iterations i. More specifically, for eachturbo-decoding iteration i, a path π′₊₁(i) going through the statesS′_(κ) ⁺¹(i), κ=1, . . . , N of the trellis is determined for theelementary decoder considered.

Similarly, FIG. 5B illustrates a second path in the trellis, goingthrough transition ending states S_(κ) ⁺¹(i), κ=N, . . . , 2, forconsecutive turbo-decoding iterations i. More specifically, for eachturbo-decoding iteration i, a path π₊₁(i) going through the states S_(κ)⁺¹(i), κ=N, . . . , 2 of the trellis is determined for the elementarydecoder considered.

The paths π′₊₁(i) and π₊₁(i) are illustrated for 10 consecutiveiterations of an 8 states elementary decoder and an AWGN channel withSNR=0.9 dB. As it can be noticed after 4 iterations, the two pathscoincide but for a one symbol shift, that is:S′ _(κ) ⁺¹(i)=S _(κ-1) ⁺¹(i) for κ=2, . . . , N−1  (10)

Condition (10) means that the transition starting state of the currentsymbol is the same as the transition ending state of the previoussymbol. It expresses therefore the continuity relation along a codingpath.

Alternatively, we may consider a third path π′⁻¹(i) in the trellis,going through transition starting states S′_(κ) ⁻¹(i), κ=1, . . . , N−1,and a fourth path π⁻¹(i), going through transition ending states S′_(κ)⁻¹(i), κ=1, . . . , N−1. Again, after several iterations the two pathscoincide but for a one symbol shift, that is:S′ _(κ) ⁻¹ =S _(κ-1) ⁻¹ for κ=2, . . . , N−1  (11)

It can be shown that, if the turbo-decoding converges, the coincidenceconditions (10) and (11) are met after the same number of iterations.

According to the invention, condition (10) or (11) is used as stoppingcriterion for the turbo-decoding iterations. The decisive advantage ofsuch a criterion is that there is no need to compare values related toconsecutive iterations (which would require a large memory capacity forthe whole block) but values within a given iteration. The comparison cantherefore be done on the fly with very little overhead.

FIG. 6 schematically represents a flow chart of a turbo-decoding methodusing a stopping criterion according to an embodiment of the invention.

As already stated in the outset, the turbo-decoding method consists in aplurality of iterations, each iteration being subdivided into P decodingoperations, 610 ₁, . . . , 610 _(P) sequentially performed by thee Pelementary decoders.

The stopping criterion is implemented here in the p^(th) decoder. Moregenerally, it is implemented in at least one elementary decoder.

The p^(th) decoder receives the systematic soft bits y_(k) ^(s) and thesoft parity bits y_(k) ^(r) ^(p) from the demodulator. It also inputsthe extrinsic values L_(e) ^(p−1)(u_(k)) from the preceding decoder.

We consider here the i^(th) turbo-decoding iteration. The decoding stage610 _(p) starts with a forward-backward recursion in 611. Theforward-backward algorithm can be MAP, Log-MAP or Max-Log-MAP.

The transition starting state S′_(κ) ⁺¹(i) of the current symbol and thetransition ending state S_(κ-1) ⁺¹(i) of the previous symbol arecompared in 612 for κ=2, . . . , N−1, i.e. for every symbol of thetrellis (or equivalently for every clock cycle) except the first one andthe last one.

According to a variant, the transition starting state S′_(κ) ⁻¹(i) ofthe current symbol and the transition ending state S′_(κ-1) ⁻¹(i) of theprevious symbol are compared for every symbol of the trellis except thefirst one and the last one.

In 613, it is checked whether the number of coincidences (successfulcomparisons) is equal to N−2. In the negative, the turbo-decoding goeson with the next decoding stage 610 _(p+1). In the affirmative however,the turbo-decoding exits in 614 and a hard decision is taken on theextrinsic values L_(e) ^(p)(u_(k)), k=1, . . . , N. The turbo-decodingmethod finally stops at 615.

The trellis-state based stopping criterion described above merelyrequires storing the transition ending state of the current symbol (ifone progresses rightwards in the trellis, according to a first variant)or the transition starting state of the current symbol (if oneprogresses leftwards in the trellis, according to a second variant). Thestored transition state is retrieved and compared with the transitionstarting state of the next symbol (in the first variant) or withtransition ending state of the previous symbol (in the second variant).Hence, in both variants, only v bits need to be stored, in contrast withthe stopping criteria of the prior art according to which N extrinsicvalues of the systematic bits had to be stored.

The invention claimed is:
 1. A turbo-decoding method for turbo-decodinga block of symbols having been coded by a turbo-encoder, theturbo-decoding comprising: a plurality of iterations, each iterationcomprising a plurality of decoding stages, each decoding stage beingcarried out by an elementary decoder corresponding to an elementaryencoder of the turbo-encoder, each decoding stage performing aforward-backward recursion on a trellis of a corresponding encoder, thetrellis representing different states of the encoder and transitionsbetween the different states, each transition being defined by astarting state and by an ending state, each transition corresponding toa bit value input by the encoder and causing the encoder to output atleast a parity bit used for generating a symbol of the block, atransition between a starting state and an ending state therebyassociated with a symbol of the block; wherein at least one of thedecoding stages comprises: a comparison in which a transition startingstate of a current symbol of a forward recursion on the trellis iscompared with a transition ending state of a previous symbol of abackward recursion on the trellis of a same iteration, the comparisonbeing made for every symbol of the block except a first one and a lastone; if the comparison fails, the turbo-decoding iteration proceeds witha next decoding stage; and if the comparison is successful, theturbo-decoding iterations are stopped.
 2. A turbo-decoding methodaccording to claim 1, wherein the transition starting state of thecurrent symbol is compared with the transition ending state of theprevious symbol for a transition corresponding to a bit value equal toone.
 3. A turbo-decoding method according to claim 1, wherein thetransition starting state of the current symbol is compared with thetransition ending state of the previous symbol for a transitioncorresponding to a bit value equal to zero.
 4. A turbo-decoding methodaccording to claim 1, wherein the comparison stores the transitionending state of a symbol and retrieves it for comparing it with thetransition starting state of a next symbol.
 5. A turbo-decoding methodaccording to claim 1, wherein the comparison stores the transitionstarting state of a symbol and retrieves it for comparing it with thetransition state of the previous symbol.
 6. A turbo-decoding methodaccording to claim 1, wherein each decoding stage supplies extrinsicvalues of systematic bits to the next decoding stage and the lastdecoding stage supplies extrinsic values of the systematic bits to thefirst decoding stage.
 7. A turbo-decoding method according to claim 6,wherein if the comparison is successful, a hard decision is taken on theextrinsic values supplied by the at least one decoding stage to providehard decided systematic bits.
 8. A turbo-decoding method according toclaim 1, wherein the forward-backward recursion is performed accordingto a MAP decoding algorithm.
 9. A turbo-decoding method according toclaim 1, wherein the forward-backward recursion is performed accordingto a Log-MAP decoding algorithm.
 10. A turbo-decoding method accordingto claim 1, wherein the forward-backward recursion is performedaccording to a Max-Log-MAP decoding algorithm.
 11. A turbo-decoder forturbo-decoding a block of symbols having been coded by a turbo-encoder,comprising: circuitry configured to perform a plurality of iterations,each iteration comprising a plurality of decoding stages, each decodingstage being carried out by an elementary decoder corresponding to anelementary encoder of the turbo-encoder, each decoding stage performinga forward-backward recursion on a trellis of a corresponding encoder,the trellis representing different states of the encoder and transitionsbetween the different states, each transition being defined by astarting state and by an ending state, each transition corresponding toa bit value input by the encoder and causing the encoder to output atleast a parity bit used for generating a symbol of the block, atransition between a starting state and an ending state therebyassociated with a symbol of the block; wherein at least one of thedecoding stages comprises: a comparison in which a transition startingstate of a current symbol of a forward recursion on the trellis iscompared with a transition ending state of a previous symbol of abackward recursion on the trellis of a same iteration, the comparisonbeing made for every symbol of the block except a first one and a lastone; if the comparison fails, the circuitry causes the turbo-decodingiteration to proceed with a next decoding stage; and if the comparisonis successful, the circuitry causes the turbo-decoding iterations tostop.